Contact centers are employed by many enterprises to service customer contacts. A typical contact center includes a switch and/or server to receive and route incoming packet-switched and/or circuit-switched contacts and one or more resources, such as human agents and automated resources (e.g., Interactive Voice Response (IVR) units), to service the incoming contacts. Contact centers distribute contacts, whether inbound or outbound, for servicing to any suitable resource according to predefined criteria. In many existing systems, the criteria for servicing the contact from the moment that the contact center becomes aware of the contact until the contact is connected to an agent are customer-specifiable (i.e., programmable by the operator of the contact center), via a capability called vectoring. Normally in a present-day automatic call distributor (ACD), when the ACD system's controller detects that an agent has become available to handle a contact, the controller identifies all predefined contact-handling queues for the agent (usually in some order of priority) and delivers to the agent the highest-priority oldest contact that matches the agent's highest-priority queue. Generally, the only condition that results in a contact not being delivered to an available agent is that there are no contacts waiting to be handled. This type of contact distribution is generally known as skill-based routing.
One of the major costs of a contact center is associated to its human resources. Even with the fact that the involved technology is very often expensive, it is usually part of a business plan which recovers the initial investment over time. Other than the regular maintenance cost, employee costs are still the major recurring component of the general contact center cost. It is thus very important to assure that each resource/skill is fully applied to the benefit of the enterprise goals.
Several different algorithms have been deployed in order to make sure that customers are serviced by the agent who can best attend their needs. A common approach, as noted above, is called skill-based routing. This method collects data about the calling customer via IVRs or any other method and uses that extra information to establish what skills are required to properly handle a given contact. Ideally, there are going to be agents available with that same set of skills that match the contact skill requirements. The successful match between the contact required skills and the agent skills is what will lead the customer to a pleasant contact center experience.
Contact centers equipped with skill-based routing components are usually efficient at distributing contacts, but are ill equipped to help supervisors determine if an agent is ready to be transitioned from a backup role to a primary role for a particular skill or vice-versa. This problem is magnified by the fact that most contact center supervisors are required to supervise a large number of agents. Thus, most supervisors are not able to devote the amount of time required to individually analyze the development of each agent.